home *** CD-ROM | disk | FTP | other *** search
/ Info-Mac 4 / Info_Mac IV CD-ROM (Pacific HiTech Inc.)(August 1994).iso / Development / Source / PlainText / TE32K.h < prev   
Text File  |  1994-02-01  |  3KB  |  145 lines

  1. #ifndef __TYPES__
  2. #include <Types.h>
  3. #endif
  4.  
  5. #ifndef __QUICKDRAW__
  6. #include <Quickdraw.h>
  7. #endif
  8.  
  9. #ifndef __MEMORY__
  10. #include <Memory.h>
  11. #endif
  12.  
  13. #ifndef __SYSEQU__
  14. #include <SysEqu.h>
  15. #endif
  16.  
  17. #ifndef __EVENTS__
  18. #include <Events.h>
  19. #endif
  20.  
  21. #ifndef __ERRORS__
  22. #include <Errors.h>
  23. #endif
  24.  
  25. #ifndef __SCRAP__
  26. #include <Scrap.h>
  27. #endif
  28.  
  29. #ifndef __OSUTILS__
  30. #include <OSUtils.h>
  31. #endif
  32.  
  33. extern pascal void doMessage(short);
  34.  
  35. #define FALSE 0
  36. #define TRUE 1
  37.  
  38. #define __UNDOACTION__
  39.  
  40.  
  41. /*--------------------------- Types ----------------------------*/
  42. typedef    struct
  43. {
  44.     long    top,left,bottom,right;
  45. } LongRect;
  46.  
  47.  
  48. typedef    struct
  49. {
  50.     long    h,v;
  51. } LongPoint;
  52.  
  53. typedef pascal Boolean (*TE32KProcPtr)(void);
  54.  
  55. typedef    struct
  56. {
  57.     LongRect            destRect;
  58.     LongRect            viewRect;
  59.     short                lineHeight;
  60.     short                fontAscent;
  61.     LongPoint            selPoint;
  62.     long                selStart;
  63.     long                selEnd;
  64.     short                active;
  65.     TE32KProcPtr        clikLoop;
  66.     long                clickTime;
  67.     long                clickLoc;
  68.     short                clikStuff;
  69.     long                caretTime;
  70.     short                caretState;
  71.     long                teLength;
  72.     Handle                hText;
  73.     short                txFont;
  74.     char                txFace;
  75.     short                txMode;
  76.     short                txSize;
  77.     short                tabWidth;
  78.     short                tabChars;
  79.     short                maxLineWidth;
  80.     Boolean                crOnly;
  81.     Boolean                wrapToLength;
  82.     Boolean                showInvisibles;
  83.     Boolean                autoIndent;
  84.     RgnHandle            selRgn;
  85.     GrafPtr                inPort;
  86.     long                nLines;
  87.     long                undoStart;
  88.     long                undoEnd;
  89.     long                undoDelta;
  90.     Handle                undoBuf;
  91.     short                resetUndo;
  92.     short                theCharWidths[256];
  93. #ifdef __PPCC__
  94.     long                lineStarts[1];
  95. #else
  96.     long                lineStarts[];
  97. #endif
  98.     
  99. }     TE32KRec,*TE32KPtr,**TE32KHandle;
  100.     
  101. extern    void            SetLongRect(LongRect *,long,long,long,long);
  102. extern    void            LongRectToRect(LongRect *,Rect *);
  103. extern    void            RectToLongRect(Rect *,LongRect *);
  104. extern    void            OffsetLongRect(LongRect *, long, long);
  105. extern    long             indexToLine(long,TE32KHandle);
  106. extern    long             indexToParagraph(long,TE32KHandle);
  107.  
  108. extern    void            TE32KInit(void);
  109. extern    TE32KHandle        TE32KNew(LongRect *,LongRect *);
  110. extern    void            TE32KDispose(TE32KHandle);
  111. extern    void             TE32KCalText(TE32KHandle);
  112. extern    void            TE32KSetText(Ptr,long,TE32KHandle);
  113. extern    void            TE32KUseTextHandle(Handle,TE32KHandle);
  114. extern    Handle            TE32KGetText(TE32KHandle);
  115. extern    void            TE32KUpdate(LongRect *,TE32KHandle);
  116. extern    void            TE32KScroll(long,long,TE32KHandle);
  117. extern    void            TE32KActivate(TE32KHandle);
  118. extern    void            TE32KDeactivate(TE32KHandle);
  119. extern    void            TE32KIdle(TE32KHandle);
  120. extern    Boolean            TE32KKey(unsigned char,TE32KHandle,short);
  121. extern    void            TE32KClick(Point,unsigned char,TE32KHandle);
  122. extern    void            TE32KSetSelect(long,long,TE32KHandle);
  123. extern    OSErr            TE32KToScrap(void);
  124. extern    OSErr            TE32KFromScrap(void);
  125. extern    void            TE32KCopy(TE32KHandle);
  126. extern    void            TE32KCut(TE32KHandle);
  127. extern    void            TE32KDelete(TE32KHandle);
  128. extern    void            TE32KInsert(Ptr,long,TE32KHandle);
  129. extern    void            TE32KPaste(TE32KHandle);
  130. extern    Handle            TE32KScrapHandle(void);
  131. extern    long            TE32KGetScrapLen(void);
  132. extern    void            TE32KSetScrapLen(long);
  133. extern    void            TE32KGetPoint(long,LongPoint *,TE32KHandle);
  134. extern    long            TE32KGetOffset(LongPoint *,TE32KHandle);
  135. extern    void            TE32KSelView(TE32KHandle);
  136. extern    void            positionView(TE32KHandle,long);
  137. extern    void            TE32KSetFontStuff(short,short,short,short,TE32KHandle);
  138. extern    void            TE32KAutoView(char, TE32KHandle);
  139. extern    void            TE32KUndo(TE32KHandle);
  140. extern void                xorCaret(TE32KHandle);
  141.  
  142. extern Handle            TE32KScrpHandle;
  143. extern long                TE32KScrpLength;
  144. extern TE32KHandle        ClickedTE32KH;
  145.